package com.cy.pj.sys.dao;


import com.cy.pj.common.pojo.Node;
import com.cy.pj.sys.pojo.SysMenu;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;

@Mapper//表示这个接口的实现类有spring去创建和管理
public interface SysMenuDao {

    /*查询所有菜单以及菜单对应的上级菜单*/
    List<SysMenu> selectMenus();

    /**
     * 查询树节点信息，在添加或编辑菜单时，
     * 会以树结构方式呈现可选的上级菜单信息
     * @return
     */
    @Select("select id,name,parentId from sys_menus")
     List<Node> selectMenuTreeNodes();

    /**
     * 添加菜单信息
     * @param menu 储存了菜单信息的对象
     * @return新增的行数
     */
    int insertMenu(SysMenu menu);

    /**
     * 基于id更新菜单信息
     * @param menu
     * @return 更新的行数
     */
    int updateMenu(SysMenu menu);


}
